

/* this ALWAYS GENERATED file contains the definitions for the interfaces */


 /* File created by MIDL compiler version 6.00.0361 */
/* at Sat Jul 29 22:55:53 2006
 */
/* Compiler settings for .\GoogleDesktopActionAPI.idl:
    Oicf, W1, Zp8, env=Win32 (32b run)
    protocol : dce , ms_ext, c_ext, robust
    error checks: allocation ref bounds_check enum stub_data 
    VC __declspec() decoration level: 
         __declspec(uuid()), __declspec(selectany), __declspec(novtable)
         DECLSPEC_UUID(), MIDL_INTERFACE()
*/
//@@MIDL_FILE_HEADING(  )

#pragma warning( disable: 4049 )  /* more than 64k source lines */


/* verify that the <rpcndr.h> version is high enough to compile this file*/
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 475
#endif

#include "rpc.h"
#include "rpcndr.h"

#ifndef __RPCNDR_H_VERSION__
#error this stub requires an updated version of <rpcndr.h>
#endif // __RPCNDR_H_VERSION__

#ifndef COM_NO_WINDOWS_H
#include "windows.h"
#include "ole2.h"
#endif /*COM_NO_WINDOWS_H*/

#ifndef __GoogleDesktopActionAPI_h__
#define __GoogleDesktopActionAPI_h__

#if defined(_MSC_VER) && (_MSC_VER >= 1020)
#pragma once
#endif

/* Forward Declarations */ 

#ifndef __IGoogleDesktopCustomAction_FWD_DEFINED__
#define __IGoogleDesktopCustomAction_FWD_DEFINED__
typedef interface IGoogleDesktopCustomAction IGoogleDesktopCustomAction;
#endif 	/* __IGoogleDesktopCustomAction_FWD_DEFINED__ */


/* header files for imported files */
#include "oaidl.h"
#include "ocidl.h"

#ifdef __cplusplus
extern "C"{
#endif 

void * __RPC_USER MIDL_user_allocate(size_t);
void __RPC_USER MIDL_user_free( void * ); 

/* interface __MIDL_itf_GoogleDesktopActionAPI_0000 */
/* [local] */ 

typedef GUID ACTION_LOCATION;

typedef GUID ACTION_ID;

#define ACTION_LOCATION_ALL GUID_NULL
class DECLSPEC_UUID("2C323906-4D96-44d8-9A25-7E5A459601C6") ActionEmailReply;
#define ACTION_EMAIL_REPLY (__uuidof(ActionEmailReply))
class DECLSPEC_UUID("D41F2CA2-2F7E-4653-BA23-3343AEFA2E2A") ActionEmailReplyToAll;
#define ACTION_EMAIL_REPLY_TO_ALL (__uuidof(ActionEmailReplyToAll))
class DECLSPEC_UUID("7DB2E753-BA6B-4cdf-8A83-14F46241E10F") ActionEmailForward;
#define ACTION_EMAIL_FORWARD (__uuidof(ActionEmailForward))
class DECLSPEC_UUID("BDCD3254-5645-44d4-86D9-529B66BCC276") ActionEmailCompose;
#define ACTION_EMAIL_COMPOSE (__uuidof(ActionEmailCompose))
class DECLSPEC_UUID("B011456A-7642-4d16-8217-8F68342A0D03") ActionEmailViewEmail;
#define ACTION_EMAIL_VIEW_EMAIL (__uuidof(ActionEmailViewEmail))
class DECLSPEC_UUID("024C004B-D318-4621-B088-B3B0A64354B4") ActionImChat;
#define ACTION_IM_CHAT (__uuidof(ActionImChat))
class DECLSPEC_UUID("{21B7E880-EEB5-4c3d-8E56-BFF2A6654E6E}") ActionOpenSearchResult;
#define ACTION_OPEN_SEARCH_RESULT (__uuidof(ActionOpenSearchResult))
typedef /* [public][public] */ 
enum __MIDL___MIDL_itf_GoogleDesktopActionAPI_0000_0001
    {	ACTION_HANDLING_DEFAULT	= 0,
	ACTION_HANDLING_QUENCH	= 1,
	ACTION_HANDLING_OVERRIDE	= 2
    } 	ActionHandling;



extern RPC_IF_HANDLE __MIDL_itf_GoogleDesktopActionAPI_0000_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_GoogleDesktopActionAPI_0000_v0_0_s_ifspec;

#ifndef __IGoogleDesktopCustomAction_INTERFACE_DEFINED__
#define __IGoogleDesktopCustomAction_INTERFACE_DEFINED__

/* interface IGoogleDesktopCustomAction */
/* [oleautomation][uuid][local][object] */ 


EXTERN_C const IID IID_IGoogleDesktopCustomAction;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("E5A04D23-6921-4ef6-B19B-6C6AA89A46AA")
    IGoogleDesktopCustomAction : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE QueryInterest( 
            /* [in] */ ACTION_LOCATION location,
            /* [in] */ ACTION_ID action,
            /* [in] */ BSTR query_string,
            /* [in] */ IUnknown *item,
            /* [out][in] */ BSTR *action_title,
            /* [out] */ BSTR *action_cookie,
            /* [out] */ ActionHandling *handling) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE HandleAction( 
            /* [in] */ ACTION_LOCATION location,
            /* [in] */ ACTION_ID action,
            /* [in] */ BSTR query_string,
            /* [in] */ IUnknown *item,
            /* [in] */ BSTR action_cookie) = 0;
        
    };
    
#else 	/* C style interface */

    typedef struct IGoogleDesktopCustomActionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            IGoogleDesktopCustomAction * This,
            /* [in] */ REFIID riid,
            /* [iid_is][out] */ void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            IGoogleDesktopCustomAction * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            IGoogleDesktopCustomAction * This);
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterest )( 
            IGoogleDesktopCustomAction * This,
            /* [in] */ ACTION_LOCATION location,
            /* [in] */ ACTION_ID action,
            /* [in] */ BSTR query_string,
            /* [in] */ IUnknown *item,
            /* [out][in] */ BSTR *action_title,
            /* [out] */ BSTR *action_cookie,
            /* [out] */ ActionHandling *handling);
        
        HRESULT ( STDMETHODCALLTYPE *HandleAction )( 
            IGoogleDesktopCustomAction * This,
            /* [in] */ ACTION_LOCATION location,
            /* [in] */ ACTION_ID action,
            /* [in] */ BSTR query_string,
            /* [in] */ IUnknown *item,
            /* [in] */ BSTR action_cookie);
        
        END_INTERFACE
    } IGoogleDesktopCustomActionVtbl;

    interface IGoogleDesktopCustomAction
    {
        CONST_VTBL struct IGoogleDesktopCustomActionVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define IGoogleDesktopCustomAction_QueryInterface(This,riid,ppvObject)	\
    (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)

#define IGoogleDesktopCustomAction_AddRef(This)	\
    (This)->lpVtbl -> AddRef(This)

#define IGoogleDesktopCustomAction_Release(This)	\
    (This)->lpVtbl -> Release(This)


#define IGoogleDesktopCustomAction_QueryInterest(This,location,action,query_string,item,action_title,action_cookie,handling)	\
    (This)->lpVtbl -> QueryInterest(This,location,action,query_string,item,action_title,action_cookie,handling)

#define IGoogleDesktopCustomAction_HandleAction(This,location,action,query_string,item,action_cookie)	\
    (This)->lpVtbl -> HandleAction(This,location,action,query_string,item,action_cookie)

#endif /* COBJMACROS */


#endif 	/* C style interface */



HRESULT STDMETHODCALLTYPE IGoogleDesktopCustomAction_QueryInterest_Proxy( 
    IGoogleDesktopCustomAction * This,
    /* [in] */ ACTION_LOCATION location,
    /* [in] */ ACTION_ID action,
    /* [in] */ BSTR query_string,
    /* [in] */ IUnknown *item,
    /* [out][in] */ BSTR *action_title,
    /* [out] */ BSTR *action_cookie,
    /* [out] */ ActionHandling *handling);


void __RPC_STUB IGoogleDesktopCustomAction_QueryInterest_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);


HRESULT STDMETHODCALLTYPE IGoogleDesktopCustomAction_HandleAction_Proxy( 
    IGoogleDesktopCustomAction * This,
    /* [in] */ ACTION_LOCATION location,
    /* [in] */ ACTION_ID action,
    /* [in] */ BSTR query_string,
    /* [in] */ IUnknown *item,
    /* [in] */ BSTR action_cookie);


void __RPC_STUB IGoogleDesktopCustomAction_HandleAction_Stub(
    IRpcStubBuffer *This,
    IRpcChannelBuffer *_pRpcChannelBuffer,
    PRPC_MESSAGE _pRpcMessage,
    DWORD *_pdwStubPhase);



#endif 	/* __IGoogleDesktopCustomAction_INTERFACE_DEFINED__ */



#ifndef __GoogleDesktopActionsAPILibrary_LIBRARY_DEFINED__
#define __GoogleDesktopActionsAPILibrary_LIBRARY_DEFINED__

/* library GoogleDesktopActionsAPILibrary */
/* [uuid] */ 



EXTERN_C const IID LIBID_GoogleDesktopActionsAPILibrary;
#endif /* __GoogleDesktopActionsAPILibrary_LIBRARY_DEFINED__ */

/* Additional Prototypes for ALL interfaces */

/* end of Additional Prototypes */

#ifdef __cplusplus
}
#endif

#endif


